package com.ruoyi.ldzlsb.service;

import java.util.List;
import com.ruoyi.ldzlsb.domain.SbInspectionItem;

/**
 * 巡检项Service接口
 * 
 * @author ruoyi
 * @date 2023-03-15
 */
public interface ISbInspectionItemService 
{
    /**
     * 查询巡检项
     * 
     * @param itemId 巡检项主键
     * @return 巡检项
     */
    public SbInspectionItem selectSbInspectionItemByItemId(Long itemId);

    /**
     * 查询巡检项列表
     * 
     * @param sbInspectionItem 巡检项
     * @return 巡检项集合
     */
    public List<SbInspectionItem> selectSbInspectionItemList(SbInspectionItem sbInspectionItem);

    /**
     * 根据配置ID查询巡检项列表
     * 
     * @param configId 配置ID
     * @return 巡检项集合
     */
    public List<SbInspectionItem> selectSbInspectionItemByConfigId(Long configId);

    /**
     * 新增巡检项
     * 
     * @param sbInspectionItem 巡检项
     * @return 结果
     */
    public int insertSbInspectionItem(SbInspectionItem sbInspectionItem);

    /**
     * 修改巡检项
     * 
     * @param sbInspectionItem 巡检项
     * @return 结果
     */
    public int updateSbInspectionItem(SbInspectionItem sbInspectionItem);

    /**
     * 批量删除巡检项
     * 
     * @param itemIds 需要删除的巡检项主键集合
     * @return 结果
     */
    public int deleteSbInspectionItemByItemIds(Long[] itemIds);

    /**
     * 删除巡检项信息
     * 
     * @param itemId 巡检项主键
     * @return 结果
     */
    public int deleteSbInspectionItemByItemId(Long itemId);
    
    /**
     * 批量保存巡检项
     * 
     * @param configId 巡检配置ID
     * @param itemList 巡检项列表
     * @param username 操作用户
     * @return 结果
     */
    public int batchSaveInspectionItems(Long configId, List<SbInspectionItem> itemList, String username);
} 